👏🏼

Duke-pro1 安装方法

芜湖!经过好几天的测试,我终于找到了成功安装陈博士仓库的方法!!!

安装不成功的关键在于相关的依赖没有安装。

⚠️
注意,不要在相关依赖安装完成之前尝试 catkin build !

第一步:安装 rosdep

强烈建议参考这个教程来安装ROS:ROS 安装教程

安装完ROS后,在这个教程的后记中,详细介绍了如何安装 rosdep。不过我的 rosdep 安装过程并没有出现教程里说的异常,建议大家挂梯子,然后不断地尝试,大概率是可以直接装的。

第二步:用 rosdep 安装仓库的依赖

在工作空间下打开终端,输入以下命令:

$ rosdep install --from-paths src --ignore-src -r -y

这个命令可以把项目的所有依赖全部安装下来,相当的方便。反复尝试使用该命令直到它告诉你全部安装成功了。

第三步:补充 rosdep 没安装成功的依赖

注意,如果你上一步仔细看它给的信息,你会发现它虽然告诉你全装成功了,但中间提示你漏了几个包。因此 dynamic-edt-3d 这个包需要手动安装。(std_msg不晓得怎么装,似乎不影响编译)

使用如下命令安装:

$ sudo apt install ros-noetic-dynamic-edt-3d

同理,如果你发现rosdep告诉你有其他的包没有装好,你也可以按照这个格式手动安装:

$ sudo apt install ros-noetic-包名

第四步:运行 catkin build

如果你在前三步手贱运行了 catkin build, 那么你需要将项目文件里的 build 和 devel 文件夹删除!

这一步卡了我好久好久,经过大量的搜索和推测,我目前的理解是c++文件的编译是有顺序的,由于不同包之间有依赖关系,所以错误的编译顺序会导致报错。这就是为什么明明依赖都安装了,以c++为主的 traj_gennav 这个包一直报错说“undefined reference to dynamicEDT3D”,因为先前反复的 catkin build 测试产生的 build 和 devel 文件会导致编译的顺序混乱。

traj_gennav 包编译失败

成功安装!

以下是其它一些小问题的解决方法

catkin:未找到命令

原因:

解决方法:


catkin_tools_prebuild 错误 (一个包都装不上)

原因:

解决方法: